//gui的迷宫中的每一小格的定义的头文件

#ifndef MAZEBLOCK_H
#define MAZEBLOCK_H

#include <QWidget>
#include <QColor>

class mazeBlock : public QWidget
{
    Q_OBJECT
private:
    QColor blockColor;
    int showState;      //地图状态，1可通，0不通
    int buildState;     //建筑模式，1可通，0不通
    int pathState;      //是否是路径，1是，0不是

    QWidget* board;     //这个小格所属于的GUI迷宫
public:
    mazeBlock(QWidget *parent = 0);
    int setBoard(QWidget* b);       //设置小格所属与的迷宫

    int getBuildState();            //获取建筑模式下的状态，用于建筑模式下保存数据

    int setShowState(int s);        //设置显示模式的数据
    int setPathState(int s);        //设置显示模式下路径的信息

    int setBuildState(int s);       //设置建筑模式下的小格的数据，用于初始化

protected:
    void paintEvent(QPaintEvent *event);        //绘制事件，给小格绘制图形
    void mousePressEvent(QMouseEvent *event);   //鼠标按下事件

signals:

public slots:
};

#endif // MAZEBLOCK_H
